import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter as Router, Route, Redirect, Switch, Link }
 from "react-router-dom";

// 这是页面 做集成用的
import Layout from 'component/layout/index.js'; 
import Home from 'page/Home/index.js';
import ProductRouter from 'page/product/router.js';


import Login from 'page/login/index.js';
import UserList from 'page/user/index.js';

import ErrorPage from 'page/error/index.js';

class App extends React.Component{  
    render(){
        let LayoutRouter=(
            <Layout>
                <Switch>
                    <Route path="/" exact component={Home} />
                    <Route path="/product"  component={ProductRouter} />
                    <Route path="/product-category" component={ProductRouter} />
                    <Route path="/order" component={Home} />
                    <Route path="/user/index" component={UserList} />
                    {/* 实际链接为 user 跳转链接为 user/index */}
                    <Redirect exact from="/user" to="/user/index" />

                    <Route component={ErrorPage} />

                </Switch>
            </Layout>
        );

        return(
            <div>
                <Router>
                    <Switch>
                        <Route path="/login"  component={Login} />
                        {/* 这一块 原版是直接上首页 展示 但是添加了个登陆页 所以路由模块要有所改变 */}
                        {/* 这里了解了一下 route 的render 属性  这也算是在子路由里添加链接的方式了 */}
                        {/* 回头看 项目 的话 多多了解一下 路由的问题 */}
                        <Route path="/" render={(props)=>
                            LayoutRouter} />
                    
                    </Switch>
                </Router>
                
            </div> 
        );
    }
}


ReactDOM.render(
    <App/>,
    document.getElementById("app")
);